home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus Special 23
/
AMIGAplus Sonderheft 23 (2000)(Falke)(DE)[!].iso
/
Updates
/
Librarys
/
MMULib
/
Fixes
/
FixCybAccess.readme
< prev
next >
Wrap
Text File
|
1999-06-03
|
1KB
|
33 lines
FixCybAccess
_____________________________________________________________________________
The cybscsi.device of Phase5 accesses chip memory for a controlled busy-wait
loop. I don't know precisely what this busy-wait is used for, but the device
does this by accessing the chip memory location 0xffff0 like this,
nop
tst.w $ffff0
nop
however, WITHOUT EVEN ALLOCATING THIS LOCATION BEFORE. Obviously, this makes
MuGuardianAngle SCREAM, and for good reason: What you see here is very bad
programming style and very questionable for a commercial product. First of
all, the chip memory timing depends on the DMA traffic of the native hardware
and hence on the screen solution. Second, even IF this busy wait has to made,
it is required to ALLOCATE the memory location used for the dummy read.
The FixCybAccess fixes this by an AllocAbs() of this location and hence
avoids this hit.
It *DOES NOT* fix the general DMA related problems of the cybscsi.device, as
for example not calling the Os functions CachePreDMA() and CachePostDMA() and hence
passing a (possibly invalid) logical address to the DMA logic instead of
the true physical address.
You only need to run this program if you want to use the MuGuardianAngel. To
install it, type
run FixCybAccess
on the shell. To abort it, break it with a ^C signal.